package com.fw.system.admin.domain;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fw.annotation.Excel;
import com.fw.core.domain.BaseEntity;
import lombok.Data;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 客户端用户对象 tb_user
 *
 * @author yanwei
 * @date 2023-04-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("tb_user")
@ApiModel(value="客户端用户", description="客户端用户表")
public class TbUser implements Serializable
        {
private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @ApiModelProperty(value = "${comment}")
        @TableId("id")
    private String id;

    /** $column.columnComment */
    @ApiModelProperty(value = "${comment}")
            @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
        @TableField("open_id")
    private String openId;

    /** 微信昵称 */
    @ApiModelProperty(value = "${comment}")
            @Excel(name = "微信昵称")
        @TableField("nick_name")
    private String nickName;

    /** 微信头像 */
    @ApiModelProperty(value = "微信昵称")
            @Excel(name = "微信头像")
        @TableField("img_url")
    private String imgUrl;

    /** 手机号 */
    @ApiModelProperty(value = "微信头像")
            @Excel(name = "手机号")
        @TableField("phone_number")
    private String phoneNumber;

    /** 1已加入城市战队 0未加入 */
    @ApiModelProperty(value = "手机号")
            @Excel(name = "1已加入城市战队 0未加入")
        @TableField("is_battalion")
    private Long isBattalion;

    /** 所属战队ID */
    @ApiModelProperty(value = "1已加入城市战队 0未加入")
            @Excel(name = "所属战队ID")
        @TableField("city_code")
    private String cityCode;

    /** 邀请码 */
    @ApiModelProperty(value = "所属战队ID")
            @Excel(name = "邀请码")
        @TableField("invite_code")
    private String inviteCode;

    /** 创建时间 */
    @ApiModelProperty(value = "邀请码")
        @TableField("create_time")
    private Date createTime;

    /** 修改时间 */
    @ApiModelProperty(value = "邀请码")
        @TableField("update_time")
    private Date updateTime;

    /** 创建人 */
    @ApiModelProperty(value = "邀请码")
        @TableField("create_by")
    private String createBy;

    /** 修改人 */
    @ApiModelProperty(value = "邀请码")
        @TableField("update_by")
    private String updateBy;

    /** 0禁用 1可用 */
    @ApiModelProperty(value = "邀请码")
            @Excel(name = "0禁用 1可用")
        @TableField("is_state")
    private Long isState;

    /** 是否获得城市勋章 0未获取 1获取 */
    @ApiModelProperty(value = "0禁用 1可用")
            @Excel(name = "是否获得城市勋章 0未获取 1获取")
        @TableField("is_medal")
    private Long isMedal;

    /** 当前有效的微信步数 */
    @ApiModelProperty(value = "是否获得城市勋章 0未获取 1获取")
            @Excel(name = "当前有效的微信步数")
        @TableField("wechat_fool")
    private Long wechatFool;

    /** 炸弹数量 */
    @ApiModelProperty(value = "当前有效的微信步数")
            @Excel(name = "炸弹数量")
        @TableField("bomb")
    private Long bomb;

    /** 护盾数量 */
    @ApiModelProperty(value = "炸弹数量")
            @Excel(name = "护盾数量")
        @TableField("shield")
    private Long shield;

    /** 积分数值 */
    @ApiModelProperty(value = "护盾数量")
            @Excel(name = "积分数值")
        @TableField("integral")
    private Long integral;

    /** 当前解锁城市个数 */
    @ApiModelProperty(value = "积分数值")
            @Excel(name = "当前解锁城市个数")
        @TableField("now_city_count")
    private Long nowCityCount;

    /** 累计步数 */
    @ApiModelProperty(value = "当前解锁城市个数")
            @Excel(name = "累计步数")
        @TableField("count_fool")
    private Long countFool;


    @TableField(exist = false)
    private List<TbCityCode> cityCodeList;



}
